#ifndef CONVERT_RST_H_
#define CONVERT_RST_H_
#pragma once
#include "ParseRST_Export.h"
#include <string>

class PARSERST_EXPORT ConvertRst
{
public:
    /**
     * @brief 读取rst文件并转换为指定的文件
     * 
     * @param inputFile rst文件路径
     * @param outputDir 输出文件夹路径
     * @param outType 指定转换格式，0-vtk，1-gmsh，3-vtk and gmsh
     */
    static int ConvertRstToFile(std::string inputFile, std::string outputDir, int outType);
    
protected:
    explicit ConvertRst();
    ~ConvertRst();

    static int ConvertRstToVTK(std::string inputFile, std::string outputDir);
    static int ConvertRstToGmsh(std::string inputFile, std::string outputDir);

private:
    ConvertRst(const ConvertRst&) = delete;
    ConvertRst& operator=(const ConvertRst&) = delete;
};

#endif // CONVERT_RST_H_